package com.kyle.mapper;

import com.kyle.pojo.Emp;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * @Author：kyle_fu
 * @description: TODO
 * @Date：2023/12/23 15:38
 * @version: 1.0
 */
public interface EmpMapper {

    /**
     * 该方法用于查询全部的员工信息
     * @return
     */
    List<Emp> findAll();

    /**
     * 根据员工编号查询该员工的信息
     * @param empno 员工编号
     * @return Emp对象
     */
    Emp findByEmpno(int empno);

    /**
     * 根据员工编号和薪资下限去查询员工信息
     * @param empno 员工编号
     * @param sal 薪资下限
     * @return 符合条件的员工信息
     */
    List<Emp> findByDeptNoAndSal(@Param("deptno") int deptno,@Param("sal") double sal);

    List<Emp> findByDeptNoAndSal2(Map<String,Object> map);

    List<Emp> findByDeptNoAndSal3(Emp emp);

    /**
     * 根据员工姓名查询员工信息---模糊查询
     * @param ename
     * @return
     */
    List<Emp> findByEname(String ename);

    /**
     * 新增员工信息对象
     * @param emp
     * @return
     */
    int addEmp(Emp emp);

    /**
     * 根据员工编号修改员工姓名
     * @param empno 员工编号
     * @param ename 员工姓名
     * @return
     */
    int updateEnameByEmpno(@Param("empno") int empno,@Param("ename") String ename);

    /**
     * 根据empno删除员工信息对象
     * @param empno
     * @return
     */
    int deleteByEmpno(int empno);
}
